home *** CD-ROM | disk | FTP | other *** search
Wrap
490 '************************************************************* 492 '***** PC-GOLF THE GOLFER's PROGRAM PC-GOLF ***** 494 '***** Version 1.5 (C) 1983,1984,1985 Ed Chandler ***** 496 '************************************************************* 498 DEFINT A-Z:DEF FNNMODM(N,M)=N-(M*INT(N/M)) 499 GOTO 6030 'GOTO 3030,PC-GOLF INITIALIZATION or GOTO 6030,MAIN 500 GOTO 3670 'special return from INIT.ASC(not for user version) 510 GOTO 8350 'on error go to subroutine 520 GOTO XXXX 'init PLAYER.DAT 530 GOTO 6350 'return from chained programs 540 GOTO 6430 'display course directory 550 GOTO 6890 'display player roster` 560 GOTO 1040 'prompter 1,M1$=prompt, return KB=(0-9), KB$=input char. 570 GOTO 1120 'prompter 2,M1$,M2$=prompt, return KB=(0-9), KB$=input char. 580 GOTO 1210 'prompter 3 with BEEP, prompt-Press space bar to continue. 590 GOTO 1220 'prompter 3 no beep 600 GOTO 1300 'prompter 4,M1$=prompt, return KB$= Y or N 610 GOTO 1400 'prompter 5 prompt-Input error. Try again. Press space bar ... 611 GOTO 1440 'prompter 6 on line 25-choose line #, press space bar 620 GOTO 1500 'open #1 INIT.DAT 630 GOTO 1560 'update #1 - PACT 640 GOTO 1610 'update #1 - CACT 641 GOTO 1660 'open #1 TEMP.DAT 650 GOTO 1710 'open #2 GCDIR.DAT 655 GOTO 1770 'OPEN #3 COURSE.DAT 656 GOTO 1810 'init A2B$ & A3B$ 660 GOTO 1870 'open #4 PDIR.DAT 661 GOTO 1910 'init A4B$ 670 GOTO 1950 'open #5 PLAYER.DAT 671 GOTO 2000 'init E5$-O5$ 672 GOTO 2030 'init A5$-O5$ 680 GOTO 7090 'convert integers in PS(i) to a string in P$ 690 GOTO XXXX 'convert integers in PS(i) to a MKI$ string in P$ 700 GOTO 7140 'remove excess blanks from KB$ 710 GOTO 7250 'calculate par for the course 720 GOTO 7400 'get integers from keyboard [zero's?] 730 GOTO 7750 'change P$ to integers in PS(i) 740 GOTO 7820 'change a number on a line in PS(i) [zero's?] 750 GOTO 4570 'debug dump display players tally record 760 GOTO XXXX 'calculate adjusted score, USGA rules [moved to TALLY] 770 GOTO XXXX 'PLOT subroutine [moved to PERFORM] 780 GOTO 4810 'debug INIT.DAT DUMP 790 GOTO 4920 'debug GCDIR.DAT, COURSE.DAT DUMP 800 GOTO 5140 'debug PDIR.DAT DUMP 810 GOTO 8110 'print messages subroutine(using restores) 811 '+++++ data tables for message subroutines 812 DATA 1,3,1,2,6 813 DATA 1,4,1,7,20,14 814 DATA 1,3,1,8,14 815 DATA 1,5,1,2,5,16,13 816 DATA 1,3,1,2,10 817 DATA 1,5,1,2,3,11,13 818 DATA 1,5,1,2,3,11,12 819 DATA 1,5,1,2,4,16,13 820 DATA 1,5,1,2,4,11,13 821 DATA 1,5,1,2,3,11,15 822 DATA 1,4,17,2,22,23 823 DATA 1,5,1,2,4,16,15 824 DATA 1,5,1,2,4,11,15 825 DATA 1,6,17,2,3,7,18,21 826 DATA 1,6,17,2,3,7,19,21 827 DATA 1,6,17,2,3,7,28,30 828 DATA 1,6,17,2,3,7,29,30 829 DATA 1,6,17,2,3,7,28,31 830 DATA 1,6,17,2,3,7,29,31 831 DATA 1,6,17,2,3,7,28,32 832 DATA 1,6,17,2,3,7,29,32 833 DATA 1,3,17,2,10 834 DATA 1,1,9 835 DATA 1,3,1,2,24 836 DATA 2,5,25,10,25,26,27 837 DATA 3,3,25,10,69 838 DATA 2,3,25,10,25 839 DATA 3,3,14,1,12 840 DATA 3,3,15,1,52 841 DATA 2,3,4,5,3 1040 KB$=INKEY$:IF KB$<>"" THEN 1040 1050 PRINT M1$; 1060 KB$=INKEY$:IF KB$="" THEN 1060 1070 KB=VAL(KB$):PRINT KB$:RETURN 1120 KB$=INKEY$:IF KB$<>"" THEN 1120 1130 COLOR 15,0,0:PRINT"You're away!" 1140 PRINT"PRESS the ";M1$;" of your choice. ";M2$; 1150 KB$=INKEY$:IF KB$="" THEN 1150 1160 KB=VAL(KB$):PRINT KB$:COLOR 7,0,0:RETURN 1210 BEEP 1220 KB$=INKEY$:IF KB$<>"" THEN 1220 1230 LOCATE CSRLIN,POS(0),0:PRINT:PRINT"PRESS the space bar to continue. "; 1240 KB$=INKEY$:IF KB$<>" " THEN 1240 1250 LOCATE CSRLIN,POS(0),1:RETURN 1300 KB$=INKEY$:IF KB$<>"" THEN 1300 1310 PRINT:GOSUB 810:PRINT" (y or n)? "; 1320 KB$=INKEY$:IF KB$="" THEN 1320 1330 IF KB$="N" OR KB$="n" THEN KB$="N":GOTO 1360 1340 IF KB$<>"Y" AND KB$<>"y" THEN 1320 1350 KB$="Y" 1360 PRINT KB$:RETURN 1400 PRINT:PRINT"Input error. Try again.":GOSUB 580:RETURN 1440 BEEP:LOCATE 25,1:PRINT"Please choose a line number from the list."; 1450 PRINT SPC(2)"PRESS the space bar to continue."; 1460 KB$=INKEY$:IF KB$<>" " THEN 1460 ELSE RETURN 1500 OPEN DEV$+DAT1$+DAT$ AS #1 LEN=16 1510 FIELD #1,2 AS NMAX$,2 AS CMAX$,2 AS CACT$,2 AS PMAX$,2 AS PACT$,1 AS A1$,1 AS B1$,1 AS C1$,1 AS D1$ 1520 FIELD #1,16 AS A1B$:RETURN 1560 GOSUB 620:GET #1,1:PACT=PACT+X 'update active player count 1570 RSET PACT$=MKI$(PACT):PUT #1,1:CLOSE #1:RETURN 1610 GOSUB 620:GET #1,1:CACT=CACT+X 'update active courses 1620 RSET CACT$=MKI$(CACT):PUT #1,1:CLOSE #1:RETURN 1660 OPEN DEV$+DAT4$+DAT$ AS #1 LEN=NMAX 1670 FIELD #1,NMAX AS TA1$:RETURN 1710 OPEN DEV$+DAT2$+DAT$ AS #2 LEN=L2 1720 FIELD #2,2 AS A2$,NMAX AS B2$,8 AS C2$,NMAX AS D2$ 1730 FIELD #2,L2 AS A2B$:RETURN 1770 OPEN DEV$+CM4$+DAT$ AS #3 LEN=L3 1780 FIELD #3,2 AS A3$,18 AS E2$,4 AS F2$,36 AS G2$,18 AS H2$,4 AS I2$,36 AS J2$,4 AS K2$,4 AS L2$ 1790 FIELD #3,L3 AS A3B$:RETURN 1810 RSET A2B$=STRING$(L2,"*"):RSET A2$=MKI$(0) 1820 RSET A3B$=STRING$(L3,"*"):RSET A3$=A2$:RSET F2$=MKS$(0):RSET I2$=F2$ 1830 RSET K2$=F2$:RSET L2$=F2$:RETURN 1870 OPEN DEV$+DAT3$+DAT$ AS #4 LEN=L4 1880 FIELD #4,2 AS A4$,NMAX AS B4$,8 AS C4$,3 AS D4$,2 AS E4$,1 AS F4$,1 AS G4$,2 AS H4$ 1890 FIELD #4,L4 AS A4B$:RETURN 1910 LSET A4B$=STRING$(L4,"*"):RSET A4$=MKI$(0):RETURN 1950 OPEN DEV$+CM3$+DAT$ AS #5 LEN=L5 1960 FIELD #5,1 AS A5$,2 AS B5$,3 AS C5$,40 AS D5$,2 AS E5$,40 AS F5$,36 AS G5$, 18 AS H5$,2 AS I5$,2 AS J5$,40 AS K5$,36 AS L5$,18 AS M5$,2 AS N5$,2 AS O5$,8 AS P5$ 1970 FIELD #5,L5-1 AS PLAYER$ 1980 FIELD #5,46 AS A5D$,L5-47 AS E5P$:RETURN 2000 LSET E5P$=STRING$(L5-47,MKI$(0)):LSET H5$=STRING$(18,"9"):LSET M5$=H5$ 2010 RSET I5$=MKI$(999):RSET N5$=I5$:RSET P5$=STRING$(8,"*"):RETURN 2030 LSET PLAYER$=STRING$(L5-1,MKI$(0)):RSET P5$=STRING$(8,"*") 2040 LSET H5$=STRING$(18,"9"):LSET M5$=H5$ 2050 RSET I5$=MKI$(999):RSET N5$=I5$ 2060 RSET A5$="I":LSET B5$="00":LSET C5$="99*" 2070 P$="":FOR I=1 TO 20:P$=P$+MKI$(-99):NEXT I:RSET D5$=P$:RETURN 6030 CLOSE:GOTO 6070 'CALL MENU 6070 CLS:PRINT"PC-GOLF THE GOLFER's PROGRAM PC-GOLF":PRINT 6072 IF ROS=0 THEN 6100 6080 DEF SEG=&H40:I%=PEEK(&H17):I%=I% AND NOT 64:POKE &H17,I% 'caps lock off 6090 DEF SEG=&H40:I%=PEEK(&H17):I%=I% OR 32:POKE &H17,I% 'num lock on 6100 PRINT"Version 1.5 (C) Copyright 1984 Ed Chandler" 6102 PRINT SPC(11)"User Supported Software":PRINT 6110 PRINT" Make your choice from the menu.":PRINT 6120 MNU1$="1. Introduction.":PRINT MNU1$ 6130 MNU2$="2. Tally the scores for a round.":PRINT MNU2$ 6140 MNU5$="3. Get the golfer's score sheet.":PRINT MNU5$ 6150 MNU4$="4. Get the golf course list.":PRINT MNU4$ 6160 MNU3$="5. Get the golfers roster.":PRINT MNU3$ 6170 MNU6$="6. Quit. Going to the 19th hole.":PRINT MNU6$ 6180 PRINT:LOCATE CSRLIN,POS(0),1 6190 M1$="number":M2$="(1,2,3,4,5 or 6). ":GOSUB 570 6200 IF KB<1 OR KB>6 THEN GOSUB 610:GOTO 6070 6220 COLOR 0,15,0:LOCATE 7,1,0 6230 IF KB=1 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU1$:GOTO 6290 6240 IF KB=2 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU2$:GOTO 6290 6250 IF KB=3 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU5$:GOTO 6290 6260 IF KB=4 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU4$:GOTO 6290 6270 IF KB=5 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU3$:GOTO 6290 6280 IF KB=6 THEN LOCATE CSRLIN+KB,POS(0):PRINT MNU6$:GOTO 6290 6290 COLOR 7,0,0:RESTORE 839:GOSUB 810:RESTORE 840:GOSUB 810 6300 LOCATE 15,1,0:RESTORE 814:BEEP:GOSUB 600:IF KB$<>"Y" THEN 6070 6340 ON KB GOTO 8210,8230,8290,8270,8250,8310 'chain next program 6350 GOTO 6030 'BACK TO MAIN 6430 CD=1:IF CACT>0 THEN 6450 'not empty 6440 PRINT:PRINT "The course directory is empty.":CD=0:GOTO 6810 6450 GOSUB 650:GOSUB 655:PRINT:PRINT"PC-GOLF's Course Directory" 6460 PRINT:PRINT "Line # Course Information":PRINT 6470 T=0:FOR I=1 TO CMAX:TMP(I)=0:NEXT I 6480 FOR I=1 TO CMAX:GET #2,I:GET #3,I:N=CVI(A2$):IF N=0 THEN 6530 6490 TMP(I)=N:X$="":L=INSTR(1,B2$," ")-1:IF L<0 THEN L=NMAX 6500 X$=X$+LEFT$(B2$,L):L=INSTR(1,D2$," ")-1:IF L<0 THEN L=NMAX 6510 X$=X$+", "+C2$+", "+LEFT$(D2$,L):PRINT N;SPC(4);X$ 6520 T=T+1:IF T=CACT THEN 6540 'tra no more courses 6530 NEXT 6540 CLOSE #2,#3:IF M1<>1 THEN 6810 'test opt. print 6550 RESTORE 822:GOSUB 600:IF KB$<>"Y" THEN 6810 6560 PRINT:M1$="PRESS the line number of the course you want. " 6570 GOSUB 560:IF KB>0 AND KB<=CMAX AND TMP(KB)=KB THEN RN=KB:GOTO 6600 6580 PRINT:PRINT"You must choose a number from the list." 6590 GOSUB 580:CLS:PRINT MNU1$:GOTO 540 6600 RN=KB:GOSUB 650:GOSUB 655:GET #2,RN:GET #3,RN:CLOSE #2,#3 'get course 6610 CLS:KB$=B2$:GOSUB 700:LOCATE 3,1 6620 PRINT SPC(36-L/2):COLOR 0,15,0:PRINT " "+KB$+" ":COLOR 7,0,0:PRINT 6630 PRINT"HOLE #"SPC(1):FOR I=1 TO 18:IF I=10 THEN PRINT SPC(6) 6640 PRINT USING"###";I;:NEXT:PRINT:PRINT"PAR":P$=E2$:GOSUB 710 6650 PRINT"Men"SPC(4):FOR I=1 TO 18:IF I=10 THEN PRINT SPC(1)F9;SPC(1) 6660 PRINT USING "###";CP(I);:NEXT:PRINT SPC(1)B9;SPC(1)PAR:P$=H2$:GOSUB 710 6670 PRINT"Ladies"SPC(1):FOR I=1 TO 18:IF I=10 THEN PRINT SPC(1)F9;SPC(1) 6680 PRINT USING "###";CP(I);:NEXT:PRINT SPC(1)B9;SPC(1)PAR:LOCATE CSRLIN+3,1 6690 PRINT"HOLE #"SPC(1):FOR I=1 TO 18:IF I=10 THEN PRINT SPC(6) 6700 PRINT USING"###";I;:NEXT:PRINT:PRINT"H'CAP" 6710 PRINT"Men"SPC(4):FOR I=1 TO 36 STEP 2:IF I=19 THEN PRINT SPC(6) 6720 PRINT USING "###";VAL(MID$(G2$,I,2));:NEXT:PRINT 6730 PRINT"Ladies"SPC(1):FOR I=1 TO 36 STEP 2:IF I=19 THEN PRINT SPC(6) 6740 PRINT USING "###";VAL(MID$(J2$,I,2));:NEXT:PRINT 6750 LOCATE CSRLIN+2,1:PRINT"COURSE RATING" 6760 IF CVS(K2$)<>0 THEN PRINT USING"GOLD ##.#";CVS(K2$) 6770 IF CVS(L2$)<>0 THEN PRINT USING"BLUE ##.#";CVS(L2$) 6780 IF CVS(F2$)<>0 THEN PRINT USING"WHITE ##.#";CVS(F2$) 6790 IF CVS(I2$)<>0 THEN PRINT USING"RED ##.#";CVS(I2$) 6800 GOSUB 590 6810 RETURN 6890 PR=1:IF PACT>0 THEN 6910 'TRA IF ROSTER NOT EMPTY 6900 PRINT:PRINT "The Player Roster is empty.":PR=0:RETURN 6910 GOSUB 660:PRINT:IF X=0 THEN 6940 6920 PRINT SPC(8)"PC-GOLF's Player Roster":PRINT"LINE # Player's Name"; 6930 PRINT SPC(7);" Phone";SPC(4);"H'cap";SPC(2);"Home Course/tee" 6940 T=0:FOR I=1 TO PMAX:TMP(I)=0:NEXT I 6950 FOR I=1 TO PMAX:GET #4,I:N=CVI(A4$):IF N=0 THEN 7000 6960 TMP(I)=N:PRINT USING "###";N;:PRINT SPC(5);B4$; 'ID AND NAME 6970 N=VAL(E4$):KB$=MID$(GCDIR$(N),2,NMAX):GOSUB 700:N$=KB$+"/"+G4$ 6980 T$=D4$:X=VAL(LEFT$(D4$,2)):P$=RIGHT$(D4$,2):IF X<0 THEN T$="+"+P$ 6990 PRINT C4$;SPC(3);T$;SPC(2);N$:T=T+1:IF T=PACT THEN 7010 'no more recs 7000 NEXT 7010 CLOSE #4:RETURN 7090 P$="":FOR I=1 TO M:P$=P$+RIGHT$(STR$(PS(I)),N)+N$:NEXT 7100 L=LEN(P$):RETURN 7140 T$="":Q=1:L=LEN(KB$) 7150 IF MID$(KB$,L,1)=" " THEN KB$=LEFT$(KB$,L-1):L=L-1:GOTO 7150 7160 IF MID$(KB$,1,1)=" " THEN KB$=MID$(KB$,2,L-1):L=LEN(KB$):GOTO 7160 7180 S=INSTR(Q,KB$,SPACE$(2)):IF S=0 THEN 7200 7190 T$=MID$(KB$,1,S-1)+MID$(KB$,S+1,L-S):KB$=T$:Q=S:L=LEN(KB$):GOTO 7180 7200 RETURN 7250 F9=0:B9=0:FOR I=1 TO 9:P=VAL(MID$(P$,I,1)):CP(I)=P:F9=F9+P 7260 P=VAL(MID$(P$,I+9,1)):CP(I+9)=P:B9=B9+P:NEXT:PAR=F9+B9:RETURN 7400 DGT$="":SUM=0:Z=0:LOCATE CSRLIN,POS(0),1 7410 KB$=INKEY$:IF KB$<>"" THEN 7410 7420 FOR I=1+L TO M+L 7430 PRINT SPC(7);I;SPC(5);:X=POS(0):LIN=CSRLIN 7440 KB$=INKEY$:IF KB$="" THEN 7440 7450 Y=ASC(KB$):IF Y<>8 THEN 7490 7460 T=POS(0):IF T>X THEN T=T-1:LOCATE CSRLIN,T 7470 Z=0:Y=LEN(DGT$):IF Y>0 THEN DGT$=LEFT$(DGT$,Y-1):Z=Y-1 7480 PRINT SPC(1):LOCATE CSRLIN,T:GOTO 7440 7490 IF Y>47 AND Y<58 THEN 7510 7500 IF Y=13 AND Z>0 THEN 7670 ELSE 7440 7510 Z=Z+1:IF Z>N THEN 7670 7520 PRINT KB$;:KB=VAL(KB$):IF S=0 THEN 7660 'no check 7530 IF S=1 THEN M2$=MSG$(42):M1=3:M2=5 7540 IF S=2 THEN M2$=MSG$(43):M1=1:M2=18 7550 IF S=3 THEN M2$=MSG$(44):M1=1:M2=9 7560 IF S=4 THEN M2$=MSG$(45):M1=1:M2=4 7570 IF S=2 THEN 7600 'hcap 7580 IF KB>=M1 AND KB<=M2 THEN 7660 7590 PRINT:PRINT M2$;MSG$(33);M1;MSG$(34);M2;MSG$(35):GOTO 7640 7600 IF Z=1 THEN T=KB:IF KB<>0 THEN 7660 ELSE 7630 7610 IF Z=2 AND T=1 AND KB<>9 THEN 7660 7620 DGT$="" 7630 PRINT:PRINT M1$;MSG$(33);M1;MSG$(34);M2;MSG$(35) 7640 GOSUB 590:LOCATE LIN,X:FOR J=1 TO 5:PRINT SPC(55):NEXT J 7650 LOCATE LIN,1:Z=0:GOTO 7430 7660 DGT$=DGT$+KB$:GOTO 7440 7670 PS(I)=VAL(DGT$):SUM=SUM+PS(I):Z=0:DGT$="":PRINT 7680 IF I=3+L OR I=6+L THEN PRINT 7690 NEXT:RETURN 7750 S=1:FOR I=1 TO M:PS(I)=VAL(MID$(P$,S,N)):S=S+N:NEXT I:RETURN 7820 CLS:PRINT T$:PRINT:PRINT SPC(4);"Line # Hole # ";M1$:X=0 7830 FOR I=1+L TO M+L:PRINT USING "#######";I-L,I,PS(I):X=X+PS(I) 7840 IF I=3+L OR I=6+L THEN PRINT 7850 NEXT I:IF S=1 OR S=3 OR S=4 THEN PRINT:PRINT SPC(11);M1$;" is ";X 7860 KB$=INKEY$:IF KB$<>"" THEN 7860 7870 PRINT:LNBR=CSRLIN:CNBR=POS(0) 7880 PRINT"PRESS the number of the line you want to change. "; 7890 KB$=INKEY$:IF KB$="" THEN 7890 7900 PRINT KB$:I=VAL(KB$):P=INSTR(1,N9$,KB$):IF P<>0 THEN 7950 7910 PRINT:PRINT"Your line number is incorrect. Try again.":GOSUB 590 7920 LOCATE LNBR,1:FOR I=1 TO 7:PRINT SPACE$(78);:NEXT 7930 LOCATE LNBR,CNBR:GOTO 7880 7940 KB$=INKEY$:IF KB$<>"" THEN 7940 7950 PRINT:LINE INPUT"ENTER the replacement number. ";KB$:T=VAL(LEFT$(KB$,2)) 7960 IF S=0 THEN 8040 'no check 7970 IF S=1 THEN M2$=MSG$(42):M1=3:M2=5 7980 IF S=2 THEN M2$=MSG$(43):M1=1:M2=18 7990 IF S=3 THEN M2$=MSG$(44):M1=1:M2=9 8000 IF S=4 THEN M2$=MSG$(45):M1=1:M2=4 8010 IF T>=M1 AND T<=M2 THEN 8040 8020 PRINT:PRINT M2$;MSG$(33);M1;MSG$(34);M2;MSG$(35) 8030 GOSUB 590:GOTO 7920 8040 PS(I+L)=T:CLS:PRINT T$:PRINT:PRINT SPC(4);"Line # Hole # ";M1$ 8050 X=0:FOR I=1+L TO M+L:PRINT USING "#######";I-L,I,PS(I) 8060 X=X+PS(I):IF I=3+L OR I=6+L THEN PRINT 8070 NEXT I 8080 IF S=1 OR S=3 OR S=4 THEN PRINT:PRINT SPC(11);M1$;" is ";X 8090 RETURN 8110 READ TYP:ON TYP GOSUB 8130,8150,8180:RETURN 8130 READ NBRI:FOR I=1 TO NBRI:READ MSG:PRINT MSG$(MSG);:NEXT:RETURN 8150 READ NBRI:READ H1:READ H2:LOCATE H1,H2 8160 FOR I=1 TO NBRI-2:READ MSG:PRINT MSG$(MSG);:NEXT:RETURN 8180 READ NBRI:READ H1:READ H2:LOCATE H1,H2 8190 READ H1:PRINT SPACE$(H1):RETURN 8210 IF CM$=CM1$ THEN 8330 ELSE RESTORE 836:GOSUB 810 8220 CM$=CM1$:CHAIN MERGE DEV$+"intro.asc" ,10000,ALL,DELETE 10000-15000 8230 IF CM$=CM2$ THEN 8330 ELSE RESTORE 836:GOSUB 810 8240 CM$=CM2$:CHAIN MERGE DEV$+"tally.asc" ,10000,ALL,DELETE 10000-15000 8250 IF CM$=CM3$ THEN 8330 ELSE RESTORE 836:GOSUB 810 8260 CM$=CM3$:CHAIN MERGE DEV$+"player.asc" ,10000,ALL,DELETE 10000-15000 8270 IF CM$=CM4$ THEN 8330 ELSE RESTORE 836:GOSUB 810 8280 CM$=CM4$:CHAIN MERGE DEV$+"course.asc" ,10000,ALL,DELETE 10000-15000 8290 IF CM$=CM5$ THEN 8330 ELSE RESTORE 836:GOSUB 810 8300 CM$=CM5$:CHAIN MERGE DEV$+"perform.asc" ,10000,ALL,DELETE 10000-15000 8310 IF CM$=CM6$ THEN 8330 ELSE RESTORE 838:GOSUB 810 8320 CM$=CM6$:CHAIN MERGE DEV$+"quit.asc" ,10000,ALL,DELETE 10000-15000 8330 GOTO 10000 'chain entry 8340 ' *** error traps 8350 IF ERR=25 OR ERR=27 THEN RESUME NEXT 8360 ON ERROR GOTO 0 ' up to basic 9999 'last statement 10000 '************************************************************* 15000 'for chain delete to basic 9999 'last statemen